Skip to content

Conversation

@zyw-bot
Copy link
Collaborator

@zyw-bot zyw-bot commented Sep 11, 2025

@github-actions github-actions bot mentioned this pull request Sep 11, 2025
@zyw-bot
Copy link
Collaborator Author

zyw-bot commented Sep 11, 2025

Diff mode

runner: ariselab-64c-docker
baseline: llvm/llvm-project@6a71938
patch: llvm/llvm-project#151132
sha256: af143e34730d8ed3c55701f7657d5d591b1ba29ab185425f82d84055994fda24
commit: 0f19182

2833 files changed, 1550598 insertions(+), 1550762 deletions(-)

Improvements:
  bdce.NumRemoved 387999 -> 406025 +4.65%
  sccp.NumInstRemoved 2016946 -> 2020614 +0.18%
  instcombine.NumDeadInst 42463020 -> 42473284 +0.02%
  instcombine.NegatorNumValuesVisited 22308691 -> 22310260 +0.01%
  instcombine.NegatorTotalNegationsAttempted 21353443 -> 21354924 +0.01%
  instcombine.NumOneIteration 63698974 -> 63701393 +0.00%
  instcombine.NumWorklistIterations 63698974 -> 63701393 +0.00%
  sccp.NumInstReplaced 133926 -> 133931 +0.00%
  gvn.NumGVNInstr 155528 -> 155532 +0.00%
  gvn.NumGVNPRE 155528 -> 155532 +0.00%
Regressions:
  correlated-value-propagation.NumSIToFP 1515 -> 1514 -0.07%
  correlated-value-propagation.NumMinMax 12484 -> 12482 -0.02%
  correlated-value-propagation.NumCmps 292266 -> 292227 -0.01%
  instcombine.NumConstProp 163716 -> 163698 -0.01%
  correlated-value-propagation.NumSExt 48149 -> 48145 -0.01%
  correlated-value-propagation.NumNUW 594770 -> 594721 -0.01%
  last-run-tracking.NumSkippedPasses 50279738 -> 50277319 -0.00%
  gvn.NumGVNEqProp 443254 -> 443234 -0.00%
  correlated-value-propagation.NumAddNUW 228705 -> 228695 -0.00%
  jump-threading.NumFolds 2648931 -> 2648818 -0.00%

+0 actix-rs/1kr0tdq4l6v38mbk.ll
+0 c3c/c_abi_x64.ll
+0 ceres/dynamic_sparse_normal_cholesky_solver.ll
+0 ceres/iterative_schur_complement_solver.ll
+0 coreutils-rs/icw7irkz6mu05a9.ll
+0 csmith/Constant.ll
+0 csmith/Function.ll
+0 cvc5/SimpSolver.ll
+0 cvc5/theory_sep_rewriter.ll
+0 delta-rs/4zvphat0q9a964bz.ll
+0 double_conversion/string-to-double.ll
+0 eastl/TestRingBuffer.ll
+0 flac/ogg_decoder_aspect.ll
+0 freetype/truetype.ll
+0 git/diffcore-rename.ll
+0 grpc/timeout_encoding.ll
+0 hwloc/base64.ll
+0 jsonnet/lexer.ll
+0 just-rs/1uppz7l1e89fp8n7.ll
+0 libevent/evdns.ll
+0 libjpeg-turbo/transupp.ll
+0 libpng/pngset.ll
+0 libquic/s3_pkt.ll
+0 libsodium/aegis256_soft.ll
+0 libsodium/crypto_secretbox_easy.ll
+0 libwebp/dwebp.ll
+0 lvgl/lv_sprintf_builtin.ll
+0 mold/cmdline.cc.X86_64.ll
+0 mold/passes.cc.X86_64.ll
+0 nghttp2/nghttp2_submit.ll
+0 nuttx/lib_base64.ll
+0 openblas/dggesx.ll
+0 opencc/Config.ll
+0 openmpi/pmix_pointer_array.ll
+0 pbrt-v4/parser.ll
+0 raylib/rmodels.ll
+0 re2/compile.ll
+0 ripgrep-rs/79zj4cmg2a4glb1.ll
+0 sentencepiece/builder.ll
+0 stb/stb_tilemap_editor.ll
+0 stb/stb_vorbis.ll
+0 verilator/V3Options.ll
+0 wasmi-rs/1z05d6joihj04oihu2i4irshf.ll
+0 zlib/deflate.ll
+0 zstd/zstd_opt.ll
-1 arrow/string.ll
-1 llvm/SemaDeclCXX.ll
-1 php/ir_check.ll
-2 typst-rs/3rk2ctuzbghb17s4.ll
-3 openjdk/lowMemoryDetector.ll
-14 rust-analyzer-rs/5fgtm3ees9sdsrsg.ll
-30 rust-analyzer-rs/44ayynfm08lnhjsw.ll

@github-actions
Copy link
Contributor

  1. Improved memory comparison calls: Multiple bcmp calls now include noundef and dereferenceable attributes with known lengths, replacing variable length arguments (e.g., %2) with compile-time constants (e.g., 6, 7, 16). This enables better optimization by allowing LLVM to reason about memory access patterns.

  2. Optimized string comparisons: In several benchmarks (arrow, mold, php), direct byte comparisons replaced bcmp calls when comparing against single characters. For example, loading a byte and comparing it directly to a constant (like 48 for '0') is more efficient than calling bcmp.

  3. Enhanced loop induction variables: Several loops had their induction variables updated to reference new preheader blocks (e.g., from %.lr.ph212 to %.lr.ph213), indicating improved loop optimization and potentially better vectorization opportunities.

  4. Improved exception handling labels: Many invoke instructions now target updated .noexc labels (e.g., from .noexc137 to .noexc138), reflecting changes in exception handling paths that may improve code layout and optimization.

  5. Better phi node predecessor updates: Numerous phi nodes were updated to reference new block labels (e.g., from %._crit_edge to %._crit_edge190), indicating improved control flow graph transformations that can enable further optimizations like dead code elimination.

model: qwen-plus-latest
CompletionUsage(completion_tokens=301, prompt_tokens=84597, total_tokens=84898, completion_tokens_details=None, prompt_tokens_details=None)

@Rajveer100
Copy link

cc @nikic

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants